import {ja} from "vuetify/locale";

export default {
    $vuetify: ja,
    slogan: "ETCD の管理をもっと簡単に",
    window: {
        main: "Etcd Workbench",
        settings: "設定",
    },
    common: {
        confirmTitle: "確認してください",
        confirm: "確認",
        cancel: "キャンセル",
        commit: "送信",
        close: "閉じる",
        file: "ファイル",
        selectFile: "ファイルを選択してください",
        view: "表示",
        readError: "読み込みエラー",
        size: "サイズ",
        lastModified: "最終更新",
        enable: "有効化",
        user: "ユーザー",
        password: "パスワード",
        none: "なし",
        privateKey: "秘密鍵",
        sha256: "Sha256",
        sha512: "Sha512",
        other: "その他",
        connect: "接続",
        failed: "失敗",
        or: "または",
        submit: "送信",
        appUpdate: "アプリ更新",
        install: "インストール",
        content: "内容",
        appTip: "アプリ通知",
        copied: "コピーしました",
        restart: "アプリを再起動",
        refresh: "更新",
        typeToSearch: "入力して検索",
        successTip: "成功！",
        remove: "削除",
        edit: "編集",
        add: "追加",
        save: "保存",
        delete: "削除",
        recover: "復元",
        version: "バージョン",
        lease: "リース",
        revision: "リビジョン",
        ttl: "TTL",
        success: "成功",
        omit: "省略",
        warning: "警告",
        key: "キー",
        prefix: "プレフィックス",
        yes: "はい",
        no: "いいえ",
        paused: "停止",
        running: "実行中",
        start: "起動",
        stop: "停止",
        copy: "コピー",
        keys: "キー",
        monitor: "モニター",
        downloaded: "ダウンロード済み",
        installedUpdates: "インストールされた更新プログラム",
        imported: "インポート",
    },
    feedback: {
        copyError: "クリップボードへの書き込み失敗",
        updateMessage: "新バージョン {version} が {releaseDate} に公開されました。今すぐインストールしますか？",
        appErrorIssue: "ソフトウェアでエラーが発生しました。問題解決のため、エラー情報を開発者に送信しますか？",
        appExitNotice: "アプリケーションが終了します",
        updateErrorTip: "更新中にエラーが発生しました",
        updateRestartConfirm: "更新が完了しました。今すぐソフトウェアを再起動しますか？",
        updateUnableTip: "更新できません",
        openBrowserFailedTip: "ブラウザを開けませんでした，理由：{reason}",
    },
    component:{
        fileSelector: {
            sizeTip: "選択したファイルが大きすぎます！",
            readFileError: "ファイルの読み込みエラー",
            viewContent: "ファイルの内容を表示",
        },
        tree: {
            expandOrCollapse: "展開 / 折りたたみ",
            searchTip: "ディレクトリ検索を有効/無効にするには、[設定] に移動します",
        },
        completeInput: {
            notice: "入力内容に基づき次のディレクトリ名を提案します（設定で精度を変更可能）"
        },
        snapshotList: {
            tasks: "スナップショットタスク",
            recent: "最近のスナップショット",
            openDir: "ファイルディレクトリを開きます",
            emptyStateTitle: "まだ記録はありません",
            stopSnapshotConfirm: "スナップショット データのバックアップを停止してもよろしいですか?",
        },
        editor: {
            formatError: "フォーマットエラー",
            format: "形式化",
        }
    },
    main: {
        home: {
            newConnection: "新規接続",
            favoritesList: "マイ接続",
            removeFavoritesConfirm: "この設定をお気に入りリストから削除してもよろしいですか？",
            closeTabConfirm: "現在の接続を閉じてもよろしいですか？",
            closeDirtyTabConfirm: "現在の接続には変更され、保存されていないキー値がありますが、変更を破棄して接続を閉じてもよろしいですか？",
            exitConfirm: "アプリケーションを終了してもよろしいですか?",
            exitConfirmTitle: "退出確認",
            exitWithDirtyTabConfirm: "変更されたが保存されていないキー値が検出されました。変更を破棄してアプリケーションを終了してもよろしいですか？",
            exiting: "アプリを退出中...",
            sessionConnLostTip: "会話接続が失われました、原因：{reason}",
            connector: {
                serverConnection: "ETCD データベース接続",
                form:{
                    name: "接続名",
                    namePlaceholder: "接続の名前を入力",
                    host: "ホスト",
                    hostPlaceholder: "ETCDデータベースのホストアドレス",
                    port: "ポート",
                    namespace: "名前空間",
                    namespacePlaceholder: "接続のグローバルプレフィックス（Namespace），オプション",
                    auth: "認証",
                    ssl: "SSL",
                    ssh: "SSH",
                    authDivider: "ETCD認証",
                    authUsername: "ユーザー名",
                    authUsernamePlaceholder: "ETCDログイン用ユーザー名",
                    authPassword: "パスワード",
                    authPasswordPlaceholder: "ETCDログイン用パスワード",
                    sslDivider: "SSL/TLS",
                    sslAuthority: "接続認証局",
                    sslAuthorityPlaceholder: "SSL/TLS認証局",
                    sslCAFile: "CA証明書",
                    sslCAFilePlaceholder: "PEMエンコードX509証明書（128KB未満）",
                    identity: "身元",
                    rsaAlgorithm: "RSAハッシュアルゴリズム",
                    certFile: "証明書ファイル",
                    certFilePlaceholder: "PEMエンコード証明書（128KB未満）",
                    certKetFile: "秘密鍵ファイル",
                    certKetFilePlaceholder: "PEMエンコード秘密鍵（128KB未満）",
                    sshDivider: "SSHトンネル",
                    sshHostPlaceholder: "SSH接続ホストアドレス",
                    sshPortPlaceholder: "SSH接続ポート",
                    sshUserPlaceholder: "SSHログインユーザー",
                    sshPasswordPlaceholder: "SSHログインパスワード",
                    sshKeyPlaceholder: "対応秘密鍵形式：Openssh、RSA、PKCS8、暗号化PKCS8（128KB未満）",
                    sshKeyPasswordPlaceholder: "秘密鍵パスワード（任意）",
                    testConnect: "接続テスト",
                    save: "保存",
                    ruleHost: "ホストアドレスを入力",
                    rulePort: "ポートを入力",
                    rulePortInvalid: "無効なポート",
                    ruleUsername: "ユーザー名を入力",
                    rulePassword: "パスワードを入力",
                    ruleSshHost: "SSHホストアドレスを入力",
                    ruleHostInvalid: "無効なホストアドレス",
                    ruleUser: "ユーザーを入力",
                },
                connectionTesting: "接続テスト中...",
                testSuccess: "接続テスト成功!",
                connecting: "接続中...",
                nameEmptyTip: "接続名を入力",
            },
            connection: {
                tabCluster: "データベースクラスター",
                tabKeys: "キー管理",
                tabMonitor: "モニター管理",
                tabLeases: "リース管理",
                tabUsers: "ユーザー管理",
                tabRoles: "ロール管理",
                keyMonitorAlert: "モニターはこの接続にバインドされます。接続セッションが閉じると停止します。",
                keyOnly: "指定キーのみ",
                withPrefix: "プレフィックス一致",
                target: "ターゲット",
                eventCreate: "作成",
                eventRemove: "削除",
                eventValueChange: "値変更",
                removeMonitor: "モニター削除",
                addMonitor: "モニター追加",
            }
        },
        cluster: {
            metrics: "データベースメトリクス",
            metricsBtnTitle: "etcdデータベースからメトリクスを取得",
            compact: "キー値圧縮",
            compactBtnTitle: "etcdキー値ストアのイベント履歴を圧縮",
            defragment: "デフラグ",
            defragmentBtnTitle: "etcdデータベースをデフラグしストレージ領域を回復",
            snapshot: "スナップショットエクスポート",
            snapshotBtnTitle: "etcdデータベースのスナップショットをローカルファイルに保存",
            clusterInfoTitle: "クラスター情報",
            clusterId: "クラスターID",
            memberId: "メンバーID",
            revision: "リビジョン",
            etcdVersion: "ETCDバージョン",
            leader: "リーダー",
            dbSizeAllocated: "割り当て済みサイズ",
            dbSizeUsed: "使用済みサイズ",
            raftIndex: "Raftインデックス",
            raftAppliedIndex: "Raft適用済みインデックス",
            raftTerm: "Raftターム",
            errors: "異常",
            everythingOk: "ノード異常なし",
            alarmNoSpace: "警告：ストレージ割り当て不足！",
            alarmCorrupt: "警告：kvストア破損検出！",
            leaderTag: "リーダー",
            currentTag: "現在",
            peerUri: "メンバー URI",
            clientUri: "クライアント URI",
            compactNotice: "etcdキー値ストアのイベント履歴を圧縮します。定期的に圧縮しないとイベント履歴が無制限に増加します。",
            physical: "物理適用を待機",
            physicalTitle: "設定後、RPCは圧縮がローカルデータベースに物理的に適用され、エントリが完全に削除されるまで待機します。",
            defragmentConfirmTip: "デフラグを実行しますか？",
            needRevisionTip: "有効なリビジョンが必要です",
            compactConfirmTip: "圧縮操作を実行しますか？",
            snapshotConfirmTip: "スナップショットを作成しますか？ダウンロード時間はデータサイズに依存します。",
        },
        keys: {
            addKey: "キー追加",
            deleteKeys: "バッチ削除",
            myCollections: "マイコレクション",
            search: "データベースから検索",
            searchBtnTitle: "etcdデータベースでキーを検索",
            currentKey: "現在のキー",
            loadMore: "さらに読み込む",
            loadedLine: "{count} キーをロード済み",
            loadedLineTitle: "ロード済みキー数",
            removeCollectionTitle: "コレクションから削除",
            collect: "コレクション",
            monitor: "モニター",
            collectBtnTitle: "マイコレクションに追加",
            editBtnTitle: "モニタールール編集",
            addMonitorBtnTitle: "モニターリストに追加",
            versionDiff: "バージョン比較",
            copyAndSave: "コピーして保存",
            rename: "名前変更",
            k8sFormatNotice: "Kubernetesのprotobuf形式データを<strong>読み取り専用</strong>のjson形式に自動変換しました。",
            grantedTtl: "付与時間(TTL)",
            createRevision: "作成リビジョン",
            modifyRevision: "変更リビジョン",
            emptyStateHeadline: "キーを選択",
            emptyStateTitle: "詳細表示または編集するキーを選択",
            diffDialogAlert: "フォーマット済みコンテンツを自動使用",
            versionA: "バージョンA",
            versionB: "バージョンB",
            putThisVersion: "最新として設定",
            fromLabel: "元キー",
            toLabel: "対象キー",
            deleteFrom: "元キーを削除",
            key: "キー",
            completeInputHint: "グローバルプレフィックス（存在する場合）配下のキー",
            neverExpire: "期限なし",
            withTtl: "有効期限(TTL)",
            withLease: "リースにバインド",
            ttlHint: "キーの有効期限（秒）。空の場合は無期限。任意。",
            leaseHint: "キーをこのリースにバインド（ライフサイクル共有）。リースが存在することを確認してください。",
            collectionInputPlaceholder: "キーを入力してコレクションに追加",
            searchFromServerPlaceHolder: "プレフィックスを入力しリモートDBから検索",
            searched: "検索済み",
            searchFromServerTip: "etcdデータベースの全キーを検索し最大50件表示します。",
            resolveConflict: "競合解決",
            resolveConflictAlert: "中間リビジョンが検出されました。コミット前に内容のマージを確定してください。",
            yourVersion: "あなたのバージョン",
            latestVersion: "最新バージョン ({version})",
            resolvedAndSubmit:"解決済み & コミット",
            renamePath: "パス名変更",
            path: "パス",
            deleteOriginKeys: "変更前のキーを削除",
            putStrategy: "新規作成戦略",
            coverStrategy: "上書き",
            renameStrategy: "名前変更",
            logs: "ログ",
            emptyKeyTip: "キーは必須です",
            invalidTtlTip:"有効なTTL値を入力",
            invalidLeaseTip: "有効なリースIDを入力",
            keyNotChangedTip: "キーに変更なし",
            deleteEmptyKeyTip: "ツリーから少なくとも1つのキーを選択",
            deleteConfirm: "以下のキーを完全に削除しますか？: ",
            deletingKeyTip: "キー削除中...",
            addNonUtf8ToCollectionTip: "非UTF-8キーはコレクションに追加できません！",
            addNonUtf8ToMonitorTip: "非UTF-8キーはモニターリストに追加できません！",
            formatCheckConfirm: "値の形式が不正です。このままコミットしますか？",
            noMultipleVersionTip: "複数バージョンが存在しないか、リビジョンが圧縮済みです",
            failedToLoadReversion: "バージョン {version} の読み込み失敗: ",
            versionTagCreate: "作成",
            versionTagLatest: "最新",
            deleteKeyConfirm: "以下のキーを完全に削除しますか？: ",
            putAnywayConfirm: "バージョン <strong style=\"color: #CDDC39;\">{version}</strong> を最新に更新しますか？",
            pathNameNotChanged: "パス名に変更なし",
            renameFailed: "名前変更失敗：プレフィックスパス配下のキー数 ({count}) が上限を超過。設定で上限値を調整してください。",
            confirmDiffTitle: "この変更を確認してください",
            confirmDiffBefore: "変更前",
            confirmDiffAfter: "変更後",
            coverDirtyConfirm: "現在の変更は保存されていません，破棄しますか？",
            exportEmptyKeysTip: "ディレクトリ ツリーから少なくとも 1 つのキーを選択してください。",
            batchExport: "バッチエクスポート",
            batchImport: "バッチインポート",
            batchImportFilePlaceholder: "バッチでインポートしたいファイルを選びます",
            batchExportAndImportAlert: "タスクは失敗しました。失敗したエントリの数: {num}",
        },
        monitor: {
            markAllRead: "全て既読にする",
            clearHistory: "履歴消去",
            myMonitors: "マイモニター",
            created: "作成",
            removed: "削除",
            valueChanged: "値変更",
            fromMonitor: "モニター通知元",
            emptyStateHeadline: "モニター通知はありません",
            diffBefore: "変更前",
            diffAfter: "変更後",
            watchStatus: "モニター状態",
            search: "モニターを検索",
            confirmClearHistory: "全てのモニター履歴を消去しますか？",
            confirmRemoveMonitor: "このモニターを削除しますか？",
        },
        leases: {
            grantNew: "新規リース付与",
            leaseId: "リースID",
            grantedTtl: "付与時間(TTL)",
            errorStateHeadline: "エラー発生!",
            errorStateText: "リース情報の読み取りに失敗しました。再試行してください。",
            emptyStateHeadline: "リースデータなし",
            ttlHint: "有効期限（秒）",
            customId: "カスタムID",
            customIdHint: "カスタムリースID。0または未入力の場合、自動生成されます。",
            customIdPlaceholder: "任意",
            leaseExpiredTip: "リースは期限切れです",
            revokeLeaseConfirm: "このリースにバインドされたキーも削除されます。削除しますか？",
            requiredTtlTip: "有効なTTL値を入力",
            invalidTtlTip: "TTLは負の値にできません",
        },
        users: {
            addUser: "ユーザー追加",
            authEnable: "認証を有効化",
            authDisable: "認証を無効化",
            user: "ユーザー",
            roles: "ロール",
            search: "検索",
            grantRole: "ロール付与",
            changePassword: "パスワード変更",
            userPlaceholder: "ユーザーアカウントを入力",
            newPassword: "パスワード",
            newPasswordPlaceholder: "ユーザーパスワードを入力",
            roleHint: "ロールを選択",
            rolePlaceholder: "ロール",
            authEnableConfirm: "認証機能を有効にしますか？再接続が必要です。",
            authDisableConfirm: "認証機能を無効にしますか？再接続が必要です。",
            revokeUserRoleConfirm: "ユーザー <strong>{user}</strong> からロール <strong>{role}</strong> を剥奪しますか？",
            requiredPasswordTip: "パスワードは必須です",
            deleteUserConfirm: "ユーザーを削除しますか？<br/><strong>{user}</strong>",
        },
        roles: {
            addRole: "ロール追加",
            permission: "権限",
            operation: "操作",
            read: "読み取り",
            write: "書き込み",
            readAndWrite: "読み書き",
            revoke: "剥奪",
            grantPermission: "権限付与",
            deleteRole: "ロール削除",
            errorStateHeadline: "エラー発生！",
            errorStateText: "ロール情報の読み取りに失敗しました。再試行してください。",
            emptyStateHeadline: "ロールなし",
            roleName: "ロール名",
            role: "ロール",
            keyType: "キータイプ",
            allKeys: "全てのキー",
            keyHint: "キーはフルパスで指定。接続のグローバルプレフィックス（Namespace）とは無関係です。",
            keyPlaceholder: "キーのパスを入力",
            revokePermissionConfirm: "ロールの権限を剥奪しますか？",
            deleteRoleConfirm: "このロールを削除しますか？",
            requiredRoleNameTip: "ロール名は必須です",
            requiredKeyTip: "キーは必須です",
        }
    },
    setting: {
        nav: {
            app: "アプリ設定",
            connection: "接続設定",
            keys: "キー",
            update: "更新",
            donate: "寄付",
            about: "情報",
        },
        resetAll: "全設定リセット",
        theme: "テーマ",
        lightTheme: "ライトモード",
        darkTheme: "ダークモード",
        systemTheme: "システム設定に従う",
        language: "言語",
        connectTimeout: "接続タイムアウト",
        connectTimeoutDesc: "etcdデータベースへの接続タイムアウト（秒）。",
        requestTimeout: "リクエストタイムアウト",
        requestTimeoutDesc: "etcdデータベースへのリクエストタイムアウト（秒）。",
        sshConnectTimeout: "SSH接続タイムアウト",
        sshConnectTimeoutDesc: "SSHサーバーへの接続タイムアウト（秒）。",
        closeTab: "タブを素早く閉じる",
        closeTabDesc: "ショートカット {shortcut} で現在の接続タブを閉じます。",
        fileEncryptKey: "ストレージ暗号化キー",
        fileEncryptKeyDesc: "接続情報をローカル保存する際の暗号化キー（16バイト）",
        exportConf: "接続設定をエクスポート",
        importConf: "接続設定をインポート",
        keySplitter: "キーパス区切り文字",
        keySplitterDesc: "キーパスをツリー構造に解析するための区切り文字。",
        maxKeysForSearchSuggestions: "検索提案の上限",
        maxKeysForSearchSuggestionsDesc: "次のディレクトリ提案時のキー検索上限。値が大きいほど精度↑、パフォーマンス↓。",
        pathRenameKeyLimit: "ディレクトリ名変更制限",
        pathRenameKeyLimitDesc: "ディレクトリパス内のキー数がこの値を超えると名前変更不可。",
        paginationQuery: "ページネーションクエリ",
        paginationQueryDesc: "キー数が多い場合、パフォーマンス向上のためページネーションを有効化。",
        paginationLimit: "ページあたりの件数",
        paginationLimitDesc: "ページネーションクエリ時の1ページあたりのキー数",
        searchDirInTree: "ツリー検索でディレクトリ名を一致",
        searchDirInTreeDesc: "有効時：ツリーノード検索でディレクトリ名を一致。無効時：キーのみ一致。",
        checkFormatBeforeSave: "保存前に形式をチェック",
        checkFormatBeforeSaveDesc: "キー保存前に形式が正しいかチェック",
        confirmDiffBeforeSave: "保存前に変更を確認する",
        confirmDiffBeforeSaveDesc: "保存する前に変更を比較して確認する",
        editorTheme: "エディターテーマ",
        editorThemeDesc: "エディターのテーマカラー設定",
        editorLightTheme: "ライトテーマ",
        editorDarkTheme: "ダークテーマ",
        curVersion: "現在のバージョン",
        checkUpdate: "更新を確認",
        downloadInGithub: "GitHubでダウンロード",
        autoUpdate: "自動更新",
        autoUpdateDesc: "公式に新しいバージョンがリリースされたら自動更新。",
        updateSource: "更新ソース",
        updateSourceDesc: "更新チェックまたはインストール時に使用するソース。",
        donateDesc: "あなたのサポートが開発の原動力です。コーヒー🍵をご馳走ください！",
        wechatRewards: "WeChat 寄付",
        supportAuthorCoffee: "作者にコーヒーをおごる",
        donateViaPayPal: "PayPalで寄付",
        donateViaWechat: "WeChatで寄付",
        opensource: "オープンソース",
        license: "ライセンス",
        reportBug: "バグ報告",
        goToSubmit: "送信ページへ",
        author: "作者",
        emailMe: "作者にメール",
        contactOnGithub: "GitHubで連絡",
        contactOnWechat: "WeChatで連絡",
        encryptKeyLengthTip: "キーの長さは16バイトである必要があります",
        resetAllConfirm: "全ての設定をリセットしますか？",
        exportConnectionTip: "接続設定のエクスポート成功",
        importConnectionTip: "接続設定のインポート成功",
        checkingUpdate: "更新を確認中...",
        alreadyLatestVersionTip: "最新バージョンです",
        clickToView: "詳細を表示",
    }
}